home *** CD-ROM | disk | FTP | other *** search
- head 1.4;
- branch ;
- access ;
- symbols ;
- locks ; strict;
- comment @ * @;
-
-
- 1.4
- date 89.06.23.11.27.48; author rab; state Exp;
- branches ;
- next 1.3;
-
- 1.3
- date 89.06.08.15.35.58; author brent; state Exp;
- branches ;
- next 1.2;
-
- 1.2
- date 89.01.27.09.28.01; author brent; state Exp;
- branches ;
- next 1.1;
-
- 1.1
- date 89.01.20.15.25.57; author brent; state Exp;
- branches ;
- next ;
-
-
- desc
- @Pseudo-file-system library package definitions
- @
-
-
- 1.4
- log
- @*** empty log message ***
- @
- text
- @/*
- * pfs.h --
- *
- * Definitions for pseudo-file-system library routines. The man page
- * for Pfs has necessary documentation.
- *
- * Copyright 1985, 1988 Regents of the University of California
- * Permission to use, copy, modify, and distribute this
- * software and its documentation for any purpose and without
- * fee is hereby granted, provided that the above copyright
- * notice appear in all copies. The University of California
- * makes no representations about the suitability of this
- * software for any purpose. It is provided "as is" without
- * express or implied warranty.
- *
- * $Header: /sprite/src/lib/include/RCS/pfs.h,v 1.3 89/06/08 15:35:58 brent Exp Locker: rab $ SPRITE (Berkeley)
- */
-
- #ifndef _PFSLIB
- #define _PFSLIB
-
- #include <fs.h>
- #include <pdev.h>
- #include <dev/pfs.h>
-
- /*
- * Boolean that can be toggled by applications command line arguments.
- * This causes print statements that trace pfs operations.
- */
- extern int pfs_Trace;
-
- /*
- * The library keeps a set of callback procedures, one for each pfs request
- * that arrives on the naming request stream. Fields can be set to NULL to get
- * a default (no-op) handler for the operation. See the man page for the
- * calling sequence of each call-back procedure.
- */
-
- typedef struct {
- int (*open)(); /* PFS_OPEN */
- int (*getAttr)(); /* PFS_GET_ATTR */
- int (*setAttr)(); /* PFS_SET_ATTR */
- int (*makeDevice)(); /* PFS_MAKE_DEVICE */
- int (*makeDir)(); /* PFS_MAKE_DIR */
- int (*remove)(); /* PFS_REMOVE */
- int (*removeDir)(); /* PFS_REMOVE_DIR */
- int (*rename)(); /* PFS_RENAME */
- int (*hardLink)(); /* PFS_HARD_LINK */
- int (*symLink)(); /* PFS_SYM_LINK */
- int (*domainInfo)(); /* PFS_DOMAIN_INFO */
- } Pfs_CallBacks;
-
- /*
- * A Pfs_Token is returned from the Pfs_Open call. It is passed
- * back to the Pfs_SetHandler and Pfs_Close calls.
- */
-
- typedef char *Pfs_Token;
-
- #define PFS_MAGIC 0x4a3b2c1d
-
- extern char pfs_ErrorMsg[];
-
- extern Pfs_Token Pfs_Open();
- extern int (*Pfs_SetHandler())();
- extern Pdev_Stream *Pfs_OpenConnection();
- extern int Pfs_PassFile();
- extern void Pfs_Close();
- #endif /* _PFSLIB */
- @
-
-
- 1.3
- log
- @Added domainInfo to call-back set.
- @
- text
- @d16 1
- a16 1
- * $Header: /sprite/src/lib/include/RCS/pfs.h,v 1.2 89/01/27 09:28:01 brent Exp $ SPRITE (Berkeley)
- d69 1
- a69 1
- #endif _PFSLIB
- @
-
-
- 1.2
- log
- @Cleaned up interface
- @
- text
- @d16 1
- a16 1
- * $Header: /sprite/src/lib/include/RCS/pdev.h,v 1.4 88/10/30 14:01:03 brent Exp Locker: brent $ SPRITE (Berkeley)
- d50 1
- @
-
-
- 1.1
- log
- @Initial revision
- @
- text
- @d5 1
- a5 1
- * for pfs (or Pfs_Open) has necessary documentation.
- d23 1
- d47 1
- d53 2
- a54 3
- * A (pointer to a) Pfs_Token is returned from the Pfs_Open call.
- * It contains a clientData field for use by the pseudo-file-system server.
- * It gets passed into Pfs_Close to end pseudo-file-system service.
- a55 7
- typedef struct Pfs_Token {
- unsigned int magic; /* PFS_MAGIC */
- int streamID; /* Sprite stream identifier, either of
- * control or server stream depending
- * on context of the token. */
- ClientData clientData; /* For use by the client of the Pdev package */
- } Pfs_Token;
- d57 2
- d63 5
- a67 4
- extern ClientData Pfs_Open();
- extern void Pfs_SetHandler();
- extern ReturnStatus Pfs_OpenConnection();
- extern void Pfs_Close();
- @
-